package org.cs.publics.model;
// Generated 2018-12-28 17:39:08 by Hibernate Tools 5.2.3.Final

import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * OrderInfo generated by hbm2java
 */
@Entity
@Table(name = "order_info", catalog = "good_fresh")
public class OrderInfo implements java.io.Serializable {

	private Integer orderInfoId;
	private Discount discount;
	private Date orderInfoTime;
	private Integer orderInfoState;
	private Long orderInfoTotalPrice;
	private Integer orderInfoPayType;
	private String orderInfoUsername;
	private String orderInfoUserMobile;
	private String orderInfoUserSite;
	private String orderInfoStoreName;
	private String orderInfoMark;
	private Integer orderInfoDcType;
	private Long orderInfoDcPrice;
	private Integer orderInfoGroupNumber;
	private Date orderInfoExtractTime;
	private String orderInfoRemake;
	private Date createTime;
	private Date updateTime;
	private String orderInfoOne;
	private String orderInfoTwo;
	private Set<OrderInfoGoods> orderInfoGoodses = new HashSet<OrderInfoGoods>(0);
	private Set<Earnings> earningses = new HashSet<Earnings>(0);
	private Set<UserComment> userComments = new HashSet<UserComment>(0);
	private Set<Refund> refunds = new HashSet<Refund>(0);

	public OrderInfo() {
	}

	public OrderInfo(Discount discount, Date orderInfoTime, Integer orderInfoState, Long orderInfoTotalPrice,
			Integer orderInfoPayType, String orderInfoUsername, String orderInfoUserMobile, String orderInfoUserSite,
			String orderInfoStoreName, String orderInfoMark, Integer orderInfoDcType, Long orderInfoDcPrice,
			Integer orderInfoGroupNumber, Date orderInfoExtractTime, String orderInfoRemake, Date createTime,
			Date updateTime, String orderInfoOne, String orderInfoTwo, Set<OrderInfoGoods> orderInfoGoodses,
			Set<Earnings> earningses, Set<UserComment> userComments, Set<Refund> refunds) {
		this.discount = discount;
		this.orderInfoTime = orderInfoTime;
		this.orderInfoState = orderInfoState;
		this.orderInfoTotalPrice = orderInfoTotalPrice;
		this.orderInfoPayType = orderInfoPayType;
		this.orderInfoUsername = orderInfoUsername;
		this.orderInfoUserMobile = orderInfoUserMobile;
		this.orderInfoUserSite = orderInfoUserSite;
		this.orderInfoStoreName = orderInfoStoreName;
		this.orderInfoMark = orderInfoMark;
		this.orderInfoDcType = orderInfoDcType;
		this.orderInfoDcPrice = orderInfoDcPrice;
		this.orderInfoGroupNumber = orderInfoGroupNumber;
		this.orderInfoExtractTime = orderInfoExtractTime;
		this.orderInfoRemake = orderInfoRemake;
		this.createTime = createTime;
		this.updateTime = updateTime;
		this.orderInfoOne = orderInfoOne;
		this.orderInfoTwo = orderInfoTwo;
		this.orderInfoGoodses = orderInfoGoodses;
		this.earningses = earningses;
		this.userComments = userComments;
		this.refunds = refunds;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)

	@Column(name = "ORDER_INFO_ID", unique = true, nullable = false)
	public Integer getOrderInfoId() {
		return this.orderInfoId;
	}

	public void setOrderInfoId(Integer orderInfoId) {
		this.orderInfoId = orderInfoId;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "DISCOUNT_ID")
	public Discount getDiscount() {
		return this.discount;
	}

	public void setDiscount(Discount discount) {
		this.discount = discount;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "ORDER_INFO_TIME", length = 19)
	public Date getOrderInfoTime() {
		return this.orderInfoTime;
	}

	public void setOrderInfoTime(Date orderInfoTime) {
		this.orderInfoTime = orderInfoTime;
	}

	@Column(name = "ORDER_INFO_STATE")
	public Integer getOrderInfoState() {
		return this.orderInfoState;
	}

	public void setOrderInfoState(Integer orderInfoState) {
		this.orderInfoState = orderInfoState;
	}

	@Column(name = "ORDER_INFO_TOTAL_PRICE", precision = 10, scale = 0)
	public Long getOrderInfoTotalPrice() {
		return this.orderInfoTotalPrice;
	}

	public void setOrderInfoTotalPrice(Long orderInfoTotalPrice) {
		this.orderInfoTotalPrice = orderInfoTotalPrice;
	}

	@Column(name = "ORDER_INFO_PAY_TYPE")
	public Integer getOrderInfoPayType() {
		return this.orderInfoPayType;
	}

	public void setOrderInfoPayType(Integer orderInfoPayType) {
		this.orderInfoPayType = orderInfoPayType;
	}

	@Column(name = "ORDER_INFO_USERNAME")
	public String getOrderInfoUsername() {
		return this.orderInfoUsername;
	}

	public void setOrderInfoUsername(String orderInfoUsername) {
		this.orderInfoUsername = orderInfoUsername;
	}

	@Column(name = "ORDER_INFO_USER_MOBILE")
	public String getOrderInfoUserMobile() {
		return this.orderInfoUserMobile;
	}

	public void setOrderInfoUserMobile(String orderInfoUserMobile) {
		this.orderInfoUserMobile = orderInfoUserMobile;
	}

	@Column(name = "ORDER_INFO_USER_SITE")
	public String getOrderInfoUserSite() {
		return this.orderInfoUserSite;
	}

	public void setOrderInfoUserSite(String orderInfoUserSite) {
		this.orderInfoUserSite = orderInfoUserSite;
	}

	@Column(name = "ORDER_INFO_STORE_NAME")
	public String getOrderInfoStoreName() {
		return this.orderInfoStoreName;
	}

	public void setOrderInfoStoreName(String orderInfoStoreName) {
		this.orderInfoStoreName = orderInfoStoreName;
	}

	@Column(name = "ORDER_INFO_MARK")
	public String getOrderInfoMark() {
		return this.orderInfoMark;
	}

	public void setOrderInfoMark(String orderInfoMark) {
		this.orderInfoMark = orderInfoMark;
	}

	@Column(name = "ORDER_INFO_DC_TYPE")
	public Integer getOrderInfoDcType() {
		return this.orderInfoDcType;
	}

	public void setOrderInfoDcType(Integer orderInfoDcType) {
		this.orderInfoDcType = orderInfoDcType;
	}

	@Column(name = "ORDER_INFO_DC_PRICE", precision = 10, scale = 0)
	public Long getOrderInfoDcPrice() {
		return this.orderInfoDcPrice;
	}

	public void setOrderInfoDcPrice(Long orderInfoDcPrice) {
		this.orderInfoDcPrice = orderInfoDcPrice;
	}

	@Column(name = "ORDER_INFO_GROUP_NUMBER")
	public Integer getOrderInfoGroupNumber() {
		return this.orderInfoGroupNumber;
	}

	public void setOrderInfoGroupNumber(Integer orderInfoGroupNumber) {
		this.orderInfoGroupNumber = orderInfoGroupNumber;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "ORDER_INFO_EXTRACT_TIME", length = 19)
	public Date getOrderInfoExtractTime() {
		return this.orderInfoExtractTime;
	}

	public void setOrderInfoExtractTime(Date orderInfoExtractTime) {
		this.orderInfoExtractTime = orderInfoExtractTime;
	}

	@Column(name = "ORDER_INFO_REMAKE")
	public String getOrderInfoRemake() {
		return this.orderInfoRemake;
	}

	public void setOrderInfoRemake(String orderInfoRemake) {
		this.orderInfoRemake = orderInfoRemake;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "CREATE_TIME", length = 19)
	public Date getCreateTime() {
		return this.createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "UPDATE_TIME", length = 19)
	public Date getUpdateTime() {
		return this.updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	@Column(name = "ORDER_INFO_ONE", length = 25)
	public String getOrderInfoOne() {
		return this.orderInfoOne;
	}

	public void setOrderInfoOne(String orderInfoOne) {
		this.orderInfoOne = orderInfoOne;
	}

	@Column(name = "ORDER_INFO_TWO", length = 25)
	public String getOrderInfoTwo() {
		return this.orderInfoTwo;
	}

	public void setOrderInfoTwo(String orderInfoTwo) {
		this.orderInfoTwo = orderInfoTwo;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "orderInfo")
	public Set<OrderInfoGoods> getOrderInfoGoodses() {
		return this.orderInfoGoodses;
	}

	public void setOrderInfoGoodses(Set<OrderInfoGoods> orderInfoGoodses) {
		this.orderInfoGoodses = orderInfoGoodses;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "orderInfo")
	public Set<Earnings> getEarningses() {
		return this.earningses;
	}

	public void setEarningses(Set<Earnings> earningses) {
		this.earningses = earningses;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "orderInfo")
	public Set<UserComment> getUserComments() {
		return this.userComments;
	}

	public void setUserComments(Set<UserComment> userComments) {
		this.userComments = userComments;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "orderInfo")
	public Set<Refund> getRefunds() {
		return this.refunds;
	}

	public void setRefunds(Set<Refund> refunds) {
		this.refunds = refunds;
	}

}
